# coding:utf-8
# @Time : 2021/4/30 17:18
# @File : footprint.py

from sqlalchemy import Column, Integer, ForeignKey
from sqlalchemy.orm import relationship, backref
from app.models import BaseModel


class Footprint(BaseModel):
    __tablename__ = 't_footprint'
    __table_args__ = {'mysql_engine': 'InnoDB', 'mysql_charset': 'utf8'}

    user_id = Column(Integer, nullable=False)  # 用户ID，去访问的人
    # user_id = Column(Integer, ForeignKey('user.id'), nullable=False)  # 用户ID，去访问的人
    visitor_id = Column(Integer, ForeignKey('user.id'), nullable=False)  # 用户ID，被访问的人

    # footprint = relationship('User', backref=backref('footprint', lazy='dynamic'))
    # visitor = relationship('User', backref=backref('visitor', lazy='dynamic'))
    # 模型名称，反向引用（自己给这个关系取的名字[通过User引用时应该是User.(名字)]，lazy【True，...】）
    # lazy=True不直接查出
    # lazy="dynamic"只可以用在一对多和多对对关系中，不可以用在一对一和多对一中
    # lazy="select"一次性全部查出
    # lazy="joined"一次性全部查出，使用表关联查
